// 封装消息提示框
// 在使用toast方法时可以传入参数也可以不传入参数,不传入参数时使用默认参数
const toast = (
  title = '数据加载中...',
  icon = 'none',
  duration = 2000,
  mask = true
) => {
  wx.showToast({
    title: title,
    icon: icon,
    duration: duration,
    mask: mask
  })
}
// 将toast方法进行暴露
export { toast }
// 如果有很多js文件都需要调用toast方法，则每次都需要进行导入，过于麻烦
// 解决方法：将toast方法挂载到wx全局对象上，只需使用wx.toast()即可调用
// wx.toast = toast

// 封装模态提示框
export const modal = (
  title = '提示',
  content = '您确定执行该操作吗？',
  showCancel = true,
  confirmColor = '#f3514f'
) => {
  // 通过Promise返回用户的操作，如果用户点击了确定返回true否则返回false
  return new Promise((resolve) => {
    // resolve：返回成功状态的Promise，可以通过await进行接收
    wx.showModal({
      title: title, // 提示的标题
      content: content, // 提示的内容
      confirmColor: confirmColor, // 确定按钮的颜色
      showCancel: showCancel, //是否展示取消按钮
      // 接口调用结束的回调函数（调用成功、失败都会执行）
      complete({ confirm, cancel }) {
        // 如果用户点击了确定，通过 resolve 抛出 true
        // 如果用户点击了取消，通过 resolve 抛出 false
        confirm && resolve(true)
        cancel && resolve(false)
      }
    })
  })
}
// 将封装好的方法挂载到wx全局对象上
// wx.modal = modal
